API Documentation
Public Member Functions | List of all members
nkGraphics::ProgramSourcesHolder Class Referencefinal

Holds the sources of a program. More...

Public Member Functions

 ProgramSourcesHolder ()
 
 ~ProgramSourcesHolder ()
 
std::string_view getVertexMemory () const
 
std::string_view getHullMemory () const
 
std::string_view getDomainMemory () const
 
std::string_view getGeometryMemory () const
 
std::string_view getPixelMemory () const
 
std::string_view getComputeMemory () const
 
std::string_view getRaytracingMemory () const
 
const std::vector< MacroEntry > & getDefineMacrosVertex () const
 
const std::vector< MacroEntry > & getDefineMacrosHull () const
 
const std::vector< MacroEntry > & getDefineMacrosDomain () const
 
const std::vector< MacroEntry > & getDefineMacrosGeometry () const
 
const std::vector< MacroEntry > & getDefineMacrosPixel () const
 
const std::vector< MacroEntry > & getDefineMacrosCompute () const
 
const std::vector< MacroEntry > & getDefineMacrosRaytracing () const
 
unsigned int getDefineMacroMaxNumber () const
 
unsigned int getDefineMacroMaxNumberPipeline () const
 
unsigned int getDefineMacroNumberCompute () const
 
unsigned int getDefineMacroNumberRaytracing () const
 
void setVertexMemory (const std::string_view &str)
 
void setHullMemory (const std::string_view &str)
 
void setDomainMemory (const std::string_view &str)
 
void setGeometryMemory (const std::string_view &str)
 
void setPixelMemory (const std::string_view &str)
 
void setComputeMemory (const std::string_view &str)
 
void setRaytracingMemory (const std::string_view &str)
 
void addDefineMacroVertex (const std::string_view &key, const std::string_view &value)
 
void addDefineMacroHull (const std::string_view &key, const std::string_view &value)
 
void addDefineMacroDomain (const std::string_view &key, const std::string_view &value)
 
void addDefineMacroGeometry (const std::string_view &key, const std::string_view &value)
 
void addDefineMacroPixel (const std::string_view &key, const std::string_view &value)
 
void addDefineMacroCompute (const std::string_view &key, const std::string_view &value)
 
void addDefineMacroRaytracing (const std::string_view &key, const std::string_view &value)
 
bool hasMinimalDefinitionsPipeline () const
 
bool hasMinimalDefinitionsCompute () const
 
bool hasMinimalDefinitionsGeometry () const
 
bool hasMinimalDefinitionsRaytracing () const
 

Detailed Description

Holds the sources of a program.

Constructor & Destructor Documentation

◆ ProgramSourcesHolder()

nkGraphics::ProgramSourcesHolder::ProgramSourcesHolder ( )

Constructor.

◆ ~ProgramSourcesHolder()

nkGraphics::ProgramSourcesHolder::~ProgramSourcesHolder ( )

Destructor.

Member Function Documentation

◆ getVertexMemory()

std::string_view nkGraphics::ProgramSourcesHolder::getVertexMemory ( ) const
Returns
The set vertex stage.

◆ getHullMemory()

std::string_view nkGraphics::ProgramSourcesHolder::getHullMemory ( ) const
Returns
The set hull stage.

◆ getDomainMemory()

std::string_view nkGraphics::ProgramSourcesHolder::getDomainMemory ( ) const
Returns
The set domain stage.

◆ getGeometryMemory()

std::string_view nkGraphics::ProgramSourcesHolder::getGeometryMemory ( ) const
Returns
The set geometry stage.

◆ getPixelMemory()

std::string_view nkGraphics::ProgramSourcesHolder::getPixelMemory ( ) const
Returns
The set pixel stage.

◆ getComputeMemory()

std::string_view nkGraphics::ProgramSourcesHolder::getComputeMemory ( ) const
Returns
The set compute stage.

◆ getRaytracingMemory()

std::string_view nkGraphics::ProgramSourcesHolder::getRaytracingMemory ( ) const
Returns
The set raytracing stage.

◆ getDefineMacrosVertex()

const std::vector<MacroEntry>& nkGraphics::ProgramSourcesHolder::getDefineMacrosVertex ( ) const
Returns
The define macros set for the vertex stage.

◆ getDefineMacrosHull()

const std::vector<MacroEntry>& nkGraphics::ProgramSourcesHolder::getDefineMacrosHull ( ) const
Returns
The define macros set for the hull stage.

◆ getDefineMacrosDomain()

const std::vector<MacroEntry>& nkGraphics::ProgramSourcesHolder::getDefineMacrosDomain ( ) const
Returns
The define macros set for the domain stage.

◆ getDefineMacrosGeometry()

const std::vector<MacroEntry>& nkGraphics::ProgramSourcesHolder::getDefineMacrosGeometry ( ) const
Returns
The define macros set for the geometry stage.

◆ getDefineMacrosPixel()

const std::vector<MacroEntry>& nkGraphics::ProgramSourcesHolder::getDefineMacrosPixel ( ) const
Returns
The define macros set for the pixel stage.

◆ getDefineMacrosCompute()

const std::vector<MacroEntry>& nkGraphics::ProgramSourcesHolder::getDefineMacrosCompute ( ) const
Returns
The define macros set for the compute stage.

◆ getDefineMacrosRaytracing()

const std::vector<MacroEntry>& nkGraphics::ProgramSourcesHolder::getDefineMacrosRaytracing ( ) const
Returns
The define macros set for the raytracing stage.

◆ getDefineMacroMaxNumber()

unsigned int nkGraphics::ProgramSourcesHolder::getDefineMacroMaxNumber ( ) const
Returns
The maximum number of define macros set accross all stages.

◆ getDefineMacroMaxNumberPipeline()

unsigned int nkGraphics::ProgramSourcesHolder::getDefineMacroMaxNumberPipeline ( ) const
Returns
The maximum number of define macros set accross all relevant stages for a pipeline program.

◆ getDefineMacroNumberCompute()

unsigned int nkGraphics::ProgramSourcesHolder::getDefineMacroNumberCompute ( ) const
Returns
The maximum number of define macros set accross all relevant stages for a compute program.

◆ getDefineMacroNumberRaytracing()

unsigned int nkGraphics::ProgramSourcesHolder::getDefineMacroNumberRaytracing ( ) const
Returns
The maximum number of define macros set accross all relevant stages for a raytracing program.

◆ setVertexMemory()

void nkGraphics::ProgramSourcesHolder::setVertexMemory ( const std::string_view &  str)
Parameters
strThe sources for the vertex stage.

◆ setHullMemory()

void nkGraphics::ProgramSourcesHolder::setHullMemory ( const std::string_view &  str)
Parameters
strThe sources for the hull stage.

◆ setDomainMemory()

void nkGraphics::ProgramSourcesHolder::setDomainMemory ( const std::string_view &  str)
Parameters
strThe sources for the domain stage.

◆ setGeometryMemory()

void nkGraphics::ProgramSourcesHolder::setGeometryMemory ( const std::string_view &  str)
Parameters
strThe sources for the geometry stage.

◆ setPixelMemory()

void nkGraphics::ProgramSourcesHolder::setPixelMemory ( const std::string_view &  str)
Parameters
strThe sources for the pixel stage.

◆ setComputeMemory()

void nkGraphics::ProgramSourcesHolder::setComputeMemory ( const std::string_view &  str)
Parameters
strThe sources for the compute stage.

◆ setRaytracingMemory()

void nkGraphics::ProgramSourcesHolder::setRaytracingMemory ( const std::string_view &  str)
Parameters
strThe sources for the raytracing stage.

◆ addDefineMacroVertex()

void nkGraphics::ProgramSourcesHolder::addDefineMacroVertex ( const std::string_view &  key,
const std::string_view &  value 
)

Adds a define macro for the vertex stage.

Parameters
keyThe key of the define.
valueThe value of the define.

◆ addDefineMacroHull()

void nkGraphics::ProgramSourcesHolder::addDefineMacroHull ( const std::string_view &  key,
const std::string_view &  value 
)

Adds a define macro for the hull stage.

Parameters
keyThe key of the define.
valueThe value of the define.

◆ addDefineMacroDomain()

void nkGraphics::ProgramSourcesHolder::addDefineMacroDomain ( const std::string_view &  key,
const std::string_view &  value 
)

Adds a define macro for the domain stage.

Parameters
keyThe key of the define.
valueThe value of the define.

◆ addDefineMacroGeometry()

void nkGraphics::ProgramSourcesHolder::addDefineMacroGeometry ( const std::string_view &  key,
const std::string_view &  value 
)

Adds a define macro for the geometry stage.

Parameters
keyThe key of the define.
valueThe value of the define.

◆ addDefineMacroPixel()

void nkGraphics::ProgramSourcesHolder::addDefineMacroPixel ( const std::string_view &  key,
const std::string_view &  value 
)

Adds a define macro for the pixel stage.

Parameters
keyThe key of the define.
valueThe value of the define.

◆ addDefineMacroCompute()

void nkGraphics::ProgramSourcesHolder::addDefineMacroCompute ( const std::string_view &  key,
const std::string_view &  value 
)

Adds a define macro for the compute stage.

Parameters
keyThe key of the define.
valueThe value of the define.

◆ addDefineMacroRaytracing()

void nkGraphics::ProgramSourcesHolder::addDefineMacroRaytracing ( const std::string_view &  key,
const std::string_view &  value 
)

Adds a define macro for the raytracing stage.

Parameters
keyThe key of the define.
valueThe value of the define.

◆ hasMinimalDefinitionsPipeline()

bool nkGraphics::ProgramSourcesHolder::hasMinimalDefinitionsPipeline ( ) const
Returns
If the sources set fit for a pipeline program (used for rendering scenes or post processing). This kind of program expects at least a vertex and pixel stage.

◆ hasMinimalDefinitionsCompute()

bool nkGraphics::ProgramSourcesHolder::hasMinimalDefinitionsCompute ( ) const
Returns
If the sources set fit for a compute program. This kind of program expects at least a compute stage.

◆ hasMinimalDefinitionsGeometry()

bool nkGraphics::ProgramSourcesHolder::hasMinimalDefinitionsGeometry ( ) const
Returns
If the sources set fit for a geometry stream program. This kind of program expects at least a vertex and geometry stage.

◆ hasMinimalDefinitionsRaytracing()

bool nkGraphics::ProgramSourcesHolder::hasMinimalDefinitionsRaytracing ( ) const
Returns
If the sources set fit for a raytracing program. This kind of program expexts at least a raytracing stage.

The documentation for this class was generated from the following file: